package motor;

import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JProgressBar;

import dominio.Paquete;
import basededatos.DAO;
import file.Archivo;

public class HiloMigracionPaquetes extends Thread{

	private static int DELAY = 100;
	private JProgressBar progressBar;
	
	public HiloMigracionPaquetes(JProgressBar pb){
		progressBar = pb;
	}
	
	public void run(){
		
		List<Object> listaPaquetes = new ArrayList<Object>();
		Archivo archivoPaquetes = new Archivo("Paquetes.dat");
		DAO dataAccess = new DAO();
		
		try {
				listaPaquetes = archivoPaquetes.ConsultarRegistros();
				
				for (int i = 0; i < listaPaquetes.size(); i++) {
						
						Paquete paquete = new Paquete();
						paquete = (Paquete) listaPaquetes.get(i);
						
						dataAccess.agregarPaquete(paquete);
						Thread.sleep(DELAY);
						progressBar.setValue(progressBar.getValue() + (progressBar.getMaximum()/listaPaquetes.size()));
						
				}

				progressBar.setValue(progressBar.getMaximum());
			
		}catch ( IllegalArgumentException | ClassNotFoundException | IOException | SecurityException | SQLException | InterruptedException e1) {
			e1.printStackTrace();
		}
	}
}
